Software developers creating new software through the process of writing software code must ensure the software functions properly as intended. In order to ensure the software functions in the manner intended, the written software code must be tested. The software code must pass known parameters by the test case producing expected results rather than breaking code. Breaking code refers to when a test case preformed on a piece of software code produces results different from what is expected. Every piece of software code produced must be tested to ensure the software functions properly. In software code, test cases are typically written for methods or functions. These test cases may be written as the software code is written or the test case may be written first followed by the software code. When writing test cases, the test case may require test environment objects. The test environment objects may be used by the test cases or passed in as parameters.
One of the most commonly used methods for developing software code is the process known as Test Driven Development (TDD) or as Outside In Design (OID). TDD or OID is a process which requires the test case to be written first, rather than the software code that needs to be tested. The TDD process begins by writing a test case for the software code that needs to be tested. Test cases can vary in length, depending on the complexity of the test case; once the test case is written, the test case should fail since the software code the test case is testing has not yet been written. However, in the process of writing the test case, compile errors appear every time a class to be tested is named in the test case. The compile error is presented since the source code under test, which is to be tested, has not been created. Compile errors also arise when a mistake exists in the actual test case software or when the test case project being performed was improperly configured. With every compile error, many Integrated Development Environments provide options where an individual manually selects and resolves the compilation error by selecting some action. This manual selection is seen as a misuse of the error checking technology which is provided by many of the Integrated Development Environments. The misuse stems from the fact that an individual has to click through options for every compile error, which can be very time consuming when writing test cases for software that is extensive in length. Further, this process establishes no linkage between the test case and the source code under test that can be leveraged during the further development and maintenance of the source code under test.